clear variables
close all
 
syms C C6 C8 R R1 R2 R3 R4 R5 R7 Ug s w
assume(0<R1 & 0<R2 & 0<R3 & 0<R4 & 0<R5 & 0<C6 & 0<R7 & 0<C8 & 0<R & 0<C & 0<Ug & s~= 0 & 0<w)
 
Zamene
zamena_LowPass = [R1 == R, R2 == R/2, R3 == R, R4 == R/2, R5 == R, C6 == C, R7 == R, C8 == C]
zamena_LowPass = 
 
zamena_BandPass = [R1 == R, R2 == 2 * R, R3 == R, R4 == R, R5 == R, C6 == C, R7 == R, C8 == C]
zamena_BandPass = 
 
zamena_HighPass = [R1 == R, R2 == R/2, R3 == R, R4 == 2 * R, R5 == R, C6 == C, R7 == R, C8 == C]
zamena_HighPass = 
Vrednosti
vrednosti = [R == 1, C == 1]
vrednosti = 
Jednacine
syms J J1 J2 J3 R9 V1 V2 V3 V4 V5 V6 V7 V8 v4
jednacine = [J + (V1 - V8)/R1 == 0,...
J1 + (V2 - V6)/R5 - (V5 - V2)/R4 == 0,...
J2 + (V3 - V8)/R2 + (V3 - V7)/R7 - s*C6*(V6 - V3) == 0,...
J3 - (V5 - V4)/R3 + v4/R9 - s * C8 * (V7 - V4) == 0,...
(V5 - V2)/R4 + (V5 - V4)/R3 == 0,...
-((V2 - V6)/R5) + s * C6 * (V6 - V3) == 0,...
-((V3 - V7)/R7) + s * C8 * (V7 - V4) == 0,...
-((V1 - V8)/R1) - (V3 - V8)/R2 == 0,...
V5 == V8, V6 == 0, V7 == 0, V1 == Ug]
jednacine = 
Promenljive
promenljive = [V1, V2, V3, V4, V5, V6, V7, V8, J, J1, J2, J3]
promenljive = 
 
odziv = solve(jednacine, promenljive)
odziv = struct with fields:
V1: Ug V2: (Ug*(C6*C8*R2*R3*R5*R7*s^2 + C6*C8*R2*R4*R5*R7*s^2))/(R1*R4 + R2*R4 + C8*R1*R3*R7*s + C8*R1*R4*R7*s + C6*C8*R1*R3*R5*R7*s^2 + C6*C8*R2*R3*R5*R7*s^2) V3: -(C8*R2*R3*R7*Ug*s + C8*R2*R4*R7*Ug*s)/(R1*R4 + R2*R4 + C8*R1*R3*R7*s + C8*R1*R4*R7*s + C6*C8*R1*R3*R5*R7*s^2 + C6*C8*R2*R3*R5*R7*s^2) V4: (Ug*(R2*R3 + R2*R4))/(R1*R4 + R2*R4 + C8*R1*R3*R7*s + C8*R1*R4*R7*s + C6*C8*R1*R3*R5*R7*s^2 + C6*C8*R2*R3*R5*R7*s^2) V5: (Ug*(C6*C8*R2*R3*R5*R7*s^2 + R2*R4))/(R1*R4 + R2*R4 + C8*R1*R3*R7*s + C8*R1*R4*R7*s + C6*C8*R1*R3*R5*R7*s^2 + C6*C8*R2*R3*R5*R7*s^2) V6: 0 V7: 0 V8: (Ug*(C6*C8*R2*R3*R5*R7*s^2 + R2*R4))/(R1*R4 + R2*R4 + C8*R1*R3*R7*s + C8*R1*R4*R7*s + C6*C8*R1*R3*R5*R7*s^2 + C6*C8*R2*R3*R5*R7*s^2) J: -(Ug*(R4 + C8*R3*R7*s + C8*R4*R7*s + C6*C8*R3*R5*R7*s^2))/(R1*R4 + R2*R4 + C8*R1*R3*R7*s + C8*R1*R4*R7*s + C6*C8*R1*R3*R5*R7*s^2 + C6*C8*R2*R3*R5*R7*s^2) J1: -(R2*Ug*(C6*C8*R3*R7*s^2 + C6*C8*R4*R7*s^2 + C6*C8*R5*R7*s^2 - 1))/(R1*R4 + R2*R4 + C8*R1*R3*R7*s + C8*R1*R4*R7*s + C6*C8*R1*R3*R5*R7*s^2 + C6*C8*R2*R3*R5*R7*s^2) J2: (Ug*(R4 + C8*R2*R3*s + C8*R2*R4*s + C8*R3*R7*s + C8*R4*R7*s + C6*C8*R2*R3*R7*s^2 + C6*C8*R2*R4*R7*s^2 + C6*C8*R3*R5*R7*s^2))/(R1*R4 + R2*R4 + C8*R1*R3*R7*s + C8*R1*R4*R7*s + C6*C8*R1*R3*R5*R7*s^2 + C6*C8*R2*R3*R5*R7*s^2) J3: -(R2*R9*Ug + R1*R4*v4 + R2*R4*v4 + C8*R2*R3*R9*Ug*s + C8*R2*R4*R9*Ug*s + C8*R1*R3*R7*s*v4 + C8*R1*R4*R7*s*v4 - C6*C8*R2*R5*R7*R9*Ug*s^2 + C6*C8*R1*R3*R5*R7*s^2*v4 + C6*C8*R2*R3*R5*R7*s^2*v4)/(R9*(R1*R4 + R2*R4 + C8*R1*R3*R7*s + C8*R1*R4*R7*s …
Low Pass odziv
syms V4_1(s) H_LowPass(s) Hjw_LowPass(w)
 
V4_1(s) = subs(odziv.V4, lhs(zamena_LowPass), rhs(zamena_LowPass))
V4_1(s) = 
H_LowPass(s) = simplify(V4_1(s)/Ug)
H_LowPass(s) = 
Hjw_LowPass(w) = subs(H_LowPass(s), s, 1i*w)
Hjw_LowPass(w) = 
Aw_LowPass(w) = simplify(abs(Hjw_LowPass(w)))
Aw_LowPass(w) = 
phi_LowPass(w) = simplify(angle(Hjw_LowPass(w)))
phi_LowPass(w) = 
 
Band Pass odziv
syms V3_1(s) H_BandPass(s) Hjw_BandPass(w)
V3_1(s) = subs(odziv.V3, lhs(zamena_BandPass), rhs(zamena_BandPass))
V3_1(s) = 
H_BandPass(s) = simplify(V3_1(s)/Ug)
H_BandPass(s) = 
 
Hjw_BandPass(w) = subs(H_BandPass(s), s, 1i*w)
Hjw_BandPass(w) = 
Aw_BandPass(w) = simplify(abs(Hjw_BandPass(w)))
Aw_BandPass(w) = 
phi_BandPass(w) = simplify(angle(Hjw_BandPass(w)))
phi_BandPass(w) = 
 
High Pass odziv
syms V2_1(s) H_HighPass(s)
V2_1(s) = subs(odziv.V2, lhs(zamena_HighPass), rhs(zamena_HighPass))
V2_1(s) = 
H_HighPass(s) = simplify(V2_1(s)/Ug)
H_HighPass(s) = 
Hjw_HighPass(w) = subs(H_HighPass(s), s, 1i*w)
Hjw_HighPass(w) = 
Aw_HighPass(w) = simplify(abs(Hjw_HighPass(w)))
Aw_HighPass(w) = 
phi_HighPass(w) = simplify(angle(Hjw_HighPass(w)))
phi_HighPass(w) = 
Crtanje grafika frekvencijskih karakteristika
figure
yyaxis left
fplot(subs(Aw_LowPass(w), lhs(vrednosti), rhs(vrednosti)), [0, 5])
ylabel('Low Pass, A(w)')
 
yyaxis right
fplot(w, subs(phi_LowPass(w), lhs(vrednosti), rhs(vrednosti)), [0, 5])
ylabel('\phi(w) [rad]')
 
xlabel('w')
grid on
 
figure
yyaxis left
fplot(subs(Aw_BandPass(w), lhs(vrednosti), rhs(vrednosti)), [0, 5])
ylabel('Low Pass, A(w)')
 
yyaxis right
fplot(w, subs(phi_BandPass(w), lhs(vrednosti), rhs(vrednosti)), [0, 5])
ylabel('\phi(w) [rad]')
 
xlabel('w')
grid on
figure
yyaxis left
fplot(subs(Aw_HighPass(w), lhs(vrednosti), rhs(vrednosti)), [0, 5])
ylabel('Low Pass, A(w)')
 
yyaxis right
fplot(w, subs(phi_HighPass(w), lhs(vrednosti), rhs(vrednosti)), [0,5])
ylabel('\phi(w) [rad]')
 
xlabel('w')
grid on